Lock Inference Proven Correct

نویسندگان

  • Dave Cunningham
  • Sophia Drossopoulou
  • Susan Eisenbach
چکیده

With the introduction of multi-core CPUs, multi-threaded programming is becoming significantly more popular. Unfortunately, it is difficult for programmers to ensure their code is correct because current languages are too low-level. Atomic sections are a recent language primitive that expose a higher level interface to programmers. Thus they make concurrent programming more straightforward. Atomic sections can be compiled using transactional memory or lock inference, but ensuring correctness and good performance is a challenge. Transactional memory has problems with IO and contention, whereas lock inference algorithms are often too imprecise which translates to a loss of parallelism at runtime. We define a lock inference algorithm that has good precision. We give the operational semantics of a model OO language, and define a notion of correctness for our algorithm. We then prove correctness using Isabelle/HOL.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Combining Lock Inference with Lock-Based Software Transactional Memory

An atomic block is a language construct that simplifies the programming of critical sections. In the past, software transactional memory (STM) and lock inference have been used to implement atomic blocks. Both approaches have strengths and weaknesses. STM provides fine-grained locking but has high overheads due to logging and potential rollbacks. Lock inference is a static analysis that compute...

متن کامل

A Simple Optimistic Skiplist Algorithm

Because of their highly distributed nature and the lack of global re-balancing, skip-lists are becoming an increasingly important logarithmic search structure for concurrent applications. Unfortunately, none of the concurrent skiplist implementations in the literature, whether lock-based or lock-free, have been proven correct. Moreover, the complex structure of these algorithms, most likely the...

متن کامل

Ðóû¹ëëò××øøú Ìýô Éùùðð¬¬ö×

We present a system for extending standard type systems with ow-sensitive type quali ers. Users annotate their programs with type quali ers, and inference checks that the annotations are correct. In our system only the type quali ers are modeled ow-sensitively|the underlying standard types are unchanged, which allows us to obtain an eÆcient constraint-based inference algorithm that integrates o...

متن کامل

Lock Inference for Systems Software

We have developed task scheduler logic (TSL) to automate reasoning about scheduling and concurrency in systems software. TSL can detect race conditions and other errors as well as supporting lock inference: the derivation of an appropriate lock implementation for each critical section in a system. Lock inference solves a number of problems in creating flexible, reliable, and efficient systems s...

متن کامل

Galloping and VIV control of square-section cylinder utilizing direct opposing smart control force

An adaptive fuzzy sliding mode controller (AFSMC) is adopted to reduce the 2D flow-induced vibration of an elastically supported square-section cylinder, free to oscillate in stream-wise andtransverse directions in both lock-in and galloping regions. The AFSMC strategy consists of a fuzzy logic inference system intended to follow a sliding-mode controller (SMC), and a robust control syste...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008